/*
 * Filename OrderFeignClient.java 2022年03月03日
 * Copyright © Ehome Co.Ltd. All Rgiths Reserved.
 * @author wuyingchao
 */
package com.ehome.poct.core.api.feign;

import com.ehome.core.page.PageInfo;
import com.ehome.poct.core.api.dto.report.ReportConfigQry;
import com.ehome.poct.core.api.dto.report.ReportConfigRecordDTO;
import com.ehome.poct.core.api.dto.report.TestReportConfDTO;
import com.ehome.poct.core.api.dto.report.TestReportConfRecordDTO;
import com.ehome.poct.core.api.vo.report.TestReportConfRecordVO;
import com.ehome.poct.core.api.vo.report.TestReportConfVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;

/**
 *
 *
 * @author wyc
 * @since 2022/03/03 16:21
 **/
@FeignClient(value = "${service.poct-core:}${service.suffix.poct-core:}", contextId = "testReportConf")
public interface TestReportConfigClient {

    @PostMapping("/testReportConf")
    void reportConf(@RequestBody TestReportConfDTO testReportConfDTO);

    @PostMapping({"/testReportConf/updateReportConf"})
    void updateReportConf(@RequestBody TestReportConfDTO testReportConfDTO);

    @PostMapping("/testReportConfRecord")
    void reportConfRecord(@RequestBody TestReportConfRecordDTO testReportConfRecordDTO);

    @GetMapping("/testReportConf/{id}")
    TestReportConfVO getById(@PathVariable Long id);

    @GetMapping("/testReportConf/page")
    PageInfo<TestReportConfVO> page(@SpringQueryMap ReportConfigQry reportConfigQry);

    @GetMapping("/testReportConfRecord/page")
    PageInfo<TestReportConfRecordVO> recordPage(@SpringQueryMap ReportConfigRecordDTO reportConfigRecordDTO);
    @GetMapping("/testReportConf/one")
    TestReportConfVO getOne(@SpringQueryMap TestReportConfDTO setClinicId);
}